"""
PromptTemplate使用示例
"""

from langchain_core.prompts import PromptTemplate, ChatPromptTemplate, SystemMessagePromptTemplate, \
    HumanMessagePromptTemplate
from models import get_ds_model_client

client = get_ds_model_client()

template_str = """你是一位专业的程序员。\n对于信息{text}进行简短描述"""

# PromptTemplate第一种使用方式
template1 = PromptTemplate.from_template(template_str)
prompt1 = template1.format(text="langchain")
print(client.invoke(prompt1))

# PromptTemplate第二种使用方式
template2 = PromptTemplate(template=template_str, input_variables=["text"])
prompt2 = template2.format(text="langchain")
print(prompt2)
print(client.invoke(prompt2))

# 聊天提示词模板
messages = ChatPromptTemplate.from_messages([SystemMessagePromptTemplate.from_template("请将一下内容翻译成{language}"),
                                             HumanMessagePromptTemplate.from_template("{text}")])
print(client.invoke(messages.format(text="I love programming", language="中文")))